package servlets;

import java.io.IOException;

import javax.ejb.EJB;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import be.ipl.finito.domaine.Joueur;
import be.ipl.finito.usecases.GestionJoueur;

@SuppressWarnings("serial")
@WebServlet(name = "servlet_login.html")
public class Login extends HttpServlet {
	
	@EJB GestionJoueur gestionJoueur;
	
	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		doPost(request, response);
	}

	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		String pseudo = request.getParameter("pseudo");
		String mdp = request.getParameter("mdp");
		
		if (pseudo==null || mdp==null) {
			request.setAttribute("mikeMessage", "<script>mikeMessenger(\"Vous n'avez pas remplis tous les champs\", 5);</script");
			request.setAttribute("champ_pseudo", pseudo);
			RequestDispatcher rd = getServletContext().getNamedDispatcher("index.html");
			rd.forward(request, response);
			return;
		}
		
		Joueur joueur = gestionJoueur.seConnecter(pseudo, mdp);
		
		if (joueur == null) {
			request.setAttribute("mikeMessage", "<script>mikeMessenger(\"Erreur : pseudo ou mot de passe incorrect\", 5);</script");
			RequestDispatcher rd = getServletContext().getNamedDispatcher("index.html");
			rd.forward(request, response);
			return;
		} else {
			request.getSession().setAttribute("joueur", joueur);
			request.setAttribute("mikeMessage", "<script>mikeMessenger(\"Salut "+joueur.getPrenom()+",soyez cool à la correction :p\", 5);</script");
			RequestDispatcher rd = getServletContext().getNamedDispatcher("servlet_dashboard.html");
			rd.forward(request, response);
			return;
		}
	}

}
